home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / ytex / yfonts.mac < prev    next >
Text File  |  1991-12-01  |  4KB  |  156 lines

  1. % Copyright (c) 1985, 1986 Daniel C. Brotsky.  All rights reserved.
  2. % Font macros for yTeX.  See the file YTEX.MAC for details.
  3.  
  4. % CONTENTS
  5.  
  6. % ^L-page       contents
  7. % ----------------------------------------------------------------------
  8. % 1             %% Font macros for YTEX
  9. % 2             %% typesize
  10. % 3             %% usersize
  11. % 4             %% initialization
  12.  
  13. \message{typesize,}
  14.  
  15. \newif\ifmagscaling
  16. \newif\ifexactsizes
  17. \newdimen\typesiz@
  18. \newtoks\baselinefactor
  19.  
  20. \def\typesize {\afterassignment\typ@size\dimen@}
  21. \def\typ@siz@ {%
  22.   \let\typ@size=\siz@rr
  23.   \ymessage{{\string\typesize=\the\dimen@}}
  24.   \ifdim       10\p@=\dimen@ \tenp@int    \csname usersizeten\endcsname
  25.   \else \ifdim 11\p@=\dimen@ \elevenp@int \csname usersizeeleven\endcsname
  26.   \else \ifdim 12\p@=\dimen@ \twelvep@int \csname usersizetwelve\endcsname
  27.   \else \let\typ@size=\typ@siz@
  28.         \errhelp={Insert `\string\typesize=<dimen>'
  29.                   where <dimen> is 10pt, 11pt, or 12pt.}%
  30.         \errmessage{Unrecognized size (\the\dimen@) in \string\typesize.
  31.                     Try again.}\fi\fi\fi}
  32. \def\siz@rr {%
  33.   \errhelp={Just continue and I'll ignore the size switch.}%
  34.   \errmessage{You can't change sizes in the middle of a document.}%
  35.   \relax}
  36. \def\fixsiz@ {%
  37.   \ifx\typ@size\siz@rr
  38.     \else \global\let\typ@size=\siz@rr \global\let\fixsiz@=\relax
  39.           \errhelp={Too late now.  Just continue and I'll assume you want }%
  40.           \addtotoks\errhelp\expandafter{\the\typesiz@.}%
  41.           \errmessage{You never gave a \string\typesize\space command.}%
  42.     \fi}
  43. \let\typ@size=\typ@siz@
  44.  
  45. \def\tenp@int {%
  46.   \typesiz@=10pt
  47.   \s@tten \mag=\magstep\z@}
  48.  
  49. \def\elevenp@int {%
  50.   \typesiz@=11pt
  51.   \ifmagscaling
  52.     \s@tten \ifexactsizes \mag=1100 \else \mag=\magstephalf \fi
  53.   \else
  54.     \s@televen \mag=\magstep\z@
  55.   \fi}
  56.  
  57. \def\twelvep@int {%
  58.   \typesiz@=12pt
  59.   \ifmagscaling
  60.     \s@tten \ifexactsizes \mag=1200 \else \mag=\magstep\@ne \fi
  61.   \else
  62.     \s@ttwelve \mag=\magstep\z@
  63.   \fi}
  64.  
  65. \def\s@tten {%
  66.   \let\regsize=\tenpoint
  67.   \let\smlsize=\ninepoint
  68.   \let\smllsize=\eightpoint
  69.   \let\smlllsize=\eightpoint
  70.   \let\bigsize=\twelvepoint
  71.   \let\biggsize=\fourteenpoint
  72.   \let\bigggsize=\eighteenpoint
  73.   \regsize}
  74.  
  75. \def\s@televen {%
  76.   \let\regsize=\elevenpoint
  77.   \let\smlsize=\tenpoint
  78.   \let\smllsize=\ninepoint
  79.   \let\smlllsize=\eightpoint
  80.   \let\bigsize=\twelvepoint
  81.   \let\biggsize=\fourteenpoint
  82.   \let\bigggsize=\eighteenpoint
  83.   \regsize}
  84.  
  85. \def\s@ttwelve {%
  86.   \let\regsize=\twelvepoint
  87.   \let\smlsize=\tenpoint
  88.   \let\smllsize=\ninepoint
  89.   \let\smlllsize=\eightpoint
  90.   \let\bigsize=\fourteenpoint
  91.   \let\biggsize=\eighteenpoint
  92.   \let\bigggsize=\eighteenpoint
  93.   \regsize}
  94.  
  95. \message{usersize,}
  96.  
  97. % new def of \setnormalspa@cing that leaves displayskips alone
  98. \def\setnormalsp@cing{%  SIDE EFFECT is to go into \rm
  99.   \rm   % set the em properly
  100.   \normalbaselineskip=\the\baselinefactor em%
  101.   \normalbaselines}
  102.  
  103. % user hook to \setnormalsp@cing
  104. \def\setnormalbaselines {\setnormalsp@cing}
  105.  
  106. \def\normalbaselines{%
  107.   \lineskip\normallineskip
  108.   \baselineskip\normalbaselineskip
  109.   \lineskiplimit\normallineskiplimit
  110.   \setbox\strutbox=\hbox{\vrule height .7\baselineskip
  111.                                 depth .3\baselineskip width\z@}}
  112.  
  113. \def\usereighteenpointmacro {%
  114.   \let\smllrm=\twelverm
  115.   \let\smlrm=\fourteenrm\let\smlit=\fourteenit
  116.   \let\smlbf=\fourteenbf\let\smltt=\fourteentt}
  117.  
  118. \def\userfourteenpointmacro {%
  119.   \let\smllrm=\tenrm
  120.   \let\smlrm=\twelverm\let\smlit=\twelveit
  121.   \let\smlbf=\twelvebf\let\smltt=\twelvett}
  122.  
  123. \def\usertwelvepointmacro {%
  124.   \let\smllrm=\ninerm
  125.   \let\smlrm=\tenrm\let\smlit=\tenit
  126.   \let\smlbf=\tenbf\let\smltt=\eleventt}
  127.  
  128. \def\userelevenpointmacro {%
  129.   \let\smllrm=\eightrm
  130.   \let\smlrm=\tenrm\let\smlit=\tenit
  131.   \let\smlbf=\tenbf\let\smltt=\tentt}
  132.  
  133. \def\usertenpointmacro {%
  134.   \let\smllrm=\eightrm
  135.   \let\smlrm=\ninerm\let\smlit=\nineit
  136.   \let\smlbf=\ninebf\let\smltt=\ninett}
  137.  
  138. \def\userninepointmacro {%
  139.   \let\smllrm=\sevenrm
  140.   \let\smlrm=\eightrm\let\smlit=\eightit
  141.   \let\smlbf=\eightbf\let\smltt=\eighttt}
  142.  
  143. \def\usereightpointmacro {%
  144.   \let\smllrm=\sevenrm
  145.   \let\smlrm=\eightrm\let\smlit=\eightit
  146.   \let\smlbf=\eightbf\let\smltt=\eighttt}
  147.  
  148. \message{initialization,}
  149.  
  150. % parameters
  151. \magscalingtrue
  152. \baselinefactor={1.3}
  153.  
  154. % default type size
  155. \tenp@int
  156.